[<<Previous Entry]
[^^Up^^]
[Next Entry>>]
[Menu]
[About The Guide]
_read() Read Data from a File
#include <io.h>
int _read(handle,buf,nbyte);
int handle; Handle associated with file
void *buf; Buffer
unsigned nbyte; Number of bytes to be read
_read() attempts to read 'nbyte' bytes from the file or device
associated with 'handle' into the buffer pointed to by 'buf'.
_read() is a direct call to the DOS read system call 0X3F. 'handle'
is a file handle obtained from a creat(), open(), dup(), dup2() or
fcntl() call. _read() begins reading disk files at the current file
pointer position. On completion, it increments the file pointer by
the number of bytes read. On devices, _read() reads bytes directly
from the device.
Returns: If successful, the number of bytes read and placed in
the buffer is returned. On end-of-file, 0 is
returned. On error, -1 is returned and 'errno'
(defined in <errno.h>) is set to one of the
following:
EACCES Permission denied
EBADF Bad file number
Notes: _read() does not remove carriage returns (as read()
does) and does not report end-of-file when a Ctrl-Z
character is read. If you are reading more than 32K
(the maximum size for type 'int') from a file, the
return value should be of type 'unsigned int'. The
maximum number of bytes that can be read is 65534.
(65535, or 0XFFFF, is indistinguishable from -1, and
will return an error.)
Portability: MS-DOS only.
See Also:
creat()
dup()
fread()
open()
read()
This page created by ng2html v1.05, the Norton guide to HTML conversion utility.
Written by Dave Pearson